home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
compuserve-file-archive
/
08 System Utilities
/
EXPLOR.DOC
< prev
next >
Wrap
Text File
|
2019-04-13
|
16KB
|
412 lines
EXPLORER II
Commodore 128 - 80 column Disk Utility Program.
Written by Rick Simon
and placed within
the Public Domain.
This program may be copied and distributed for free.
It may not be sold.
This program will only operate on the Commodore 128 computer. It utilizes
the 80 column screen in Fast mode, and should work with any Commodore
compatible disk drive and printer. It was compiled using Basic 128 by
Abacus Software to increase the speed of the program. It's features are:
#1. Multi-file copier using one or more disk drives (single/dual).
#2. Full sector editor capable of reaching track 70 on the 1571.
#3. Print files to the screen or printer as normal characters, with
control codes trapped, with control codes as ASCII codes, or
all characters as ASCII codes.
#4. Unscratch command to retrieve accidently erased files.
#5. Trace data sectors of files to screen or printer.
#6. Full directory of disk including scratched files.
#7. Screen dump to printer.
#8. Multi-file scratch command.
#9. Access to full disk commands.
#10. Ability to change file types from/to Prg/Seq/Usr format.
-----------------------------------------------------------------------
THE MAIN MENU
$ - Directory:
This command will call up the entire directory of the disk and display it
to the screen. Included will be the name, type, size, track & sector of the
first data block for each file on the disk. Also, the remaining blocks free
on the disk. Included are any scratched files on the disk. Additionally,
the disk name, ID, and type of format (1541/1571) will be displayed in the
upper window. Up to twenty file names may be viewed at any given time. If
there are over 20 files on the disk, the first 20 will be shown, and a
message at the bottom of the screen telling how many files total are on the
disk. (see scrolling below)
NOTE: The format type displayed in the upper window is the disk format,
NOT the type of drive.
> - Disk Commands:
This calls up the disk commands menu. (see below)
C - Copy files:
This command will allow for the copying of program, sequential, or user
files from the currently listed Source drive to the listed Destination
drive. If the same drive is listed for both, a 54K buffer will be used for
the copying. The buffer will accept files up to 219 blocks long. If two
different drives are used, file size is only limited by disk space. You
will be prompted for the file(s) you wish to copy. Enter the number of the
file from the directory and press RETURN. The cursor will reappear with the
same prompt. You may either enter more file numbers, or press the RETURN
key by itself to begin copying. You will be asked if you wish to format the
destination disk. The copier is not 'blazing' fast, but it will allow
copying between different types of disk drives (i.e. 1571 and 1541, 1571
and MSD, etc.) I timed the copy speed out at approx. 1.5 seconds per block.
The name of the current file being copied will be displayed along with the
number of bytes in the file.
T - Trace File:
This command will print out to the screen or the printer a track and
sector trace of the data blocks for the requested file. Simply enter the
number of the file you wish to have traced. You will then see the track and
sector of each data block printed across the screen (or printer if
selected). The name of the file will be displayed in the upper window (or
printed on the paper).
U - Unscratch Command:
This command allows you to change a Deleted (scratched) file back to it's
original format, and will re-allocate all of the blocks used by that file.
It will also let you change any Prg, Seq, or Usr file on the disk to any of
those three formats. This is handy for converting that Seq word processor
file over to Prg format so your 'other' word processor can read it, or vice
versa. You will be prompted for the file number, and which type format
(P,S,U) you wish to change it to. Pressing RETURN by itself at the file
name prompt will abort from this command back to the Main Menu.
WARNING: To insure the proper restoration of a scratched file, you must
not save or append any data on the disk after scratching the
file, and before using this command.
P - Print File:
This command will print to the screen or printer the contents of any Prg,
Seq, or Usr file. Pressing RETURN by itself at the file number prompt will
abort back to the menu. While the file is being printed, you may pause it
at any time by pressing any key. At that time you can either abort out of
it by pressing the 'Q' key, or restart by pressing any other key.
Additionally, there are four different 'translation' types for the data.
You will be prompted for which Translation type you wish (1,2,3,4). They
are as follows:
1. This prints all characters as their equivalent CHR$ codes.
WARNING: This includes such codes as cursor colors, clear screen, home
cursor, flash on/off, reverse on/off, set windows, etc. If
this option is used to print the file to the screen, there is
no telling what your screen will look like at the end of it.
2. This prints all normal characters (letters,numbers,etc.) normally.
All control codes mentioned in the Warning above are trapped and
appear as a white period. Recommend this option for printing to
the screen. If you press Return at the Translation prompt, this
translation option is used.
3. Same as #2 above except, trapped characters are printed as their
equivalent number inside white brackets. For instance, a Reverse
On would appear as: [ 18] - equivalent to CHR$(18)
4. This prints ALL characters as ASCII equivalents inside brackets.
This is handy for dumping out to printer the numbers needed for
POKE statements for machine language programs/sub-routines.
B - Block Editor:
Calls the sector editor menu. (see below)
E - Exit:
This exits the entire program. You are prompted: 'Are You Sure ?'
^ - Screen Dump:
Pressing the up arrow key (next to the asterisk key, not the cursor key)
will do a screen dump to the selected printer. This is an 'invisible'
command and does not appear in the menu.
<- - New Parameters:
Pressing the left arrow key (next to the 1, not the cursor key) will allow
you to set the parameters for your peripherals. You will be prompted for
the Source device number (8 to 30) and drive number (0 or 1), the
Destination device number (8 to 30) and drive number (0 or 1), the printer
device number (4 to 7), and the printer secondary address (0 to 255). When
answering the prompts, pressing the RETURN key by itself will leave the
device numbers for the Source drive, Destination drive, and printer the
same as they were. The drive numbers and printer secondary address will be
changed to zero unless otherwise specified. This is an 'invisible' command
which does not appear on the menu.
Up/Down Cursor keys:
These keys may be used to scroll the disk directory up or down when it is
displayed if there are more files on the disk than can be displayed at one
time. These are 'invisible' commands and do not appear on the menu.
----------------------------------------------------------------------
BLOCK EDITOR MENU
F1 - Chain Block:
This command will read the byte under the cursor as the next Track, the
byte to the right of the cursor as the next Sector, and attempt to jump to
and display that block. This is very handy when tracing a file on the disk
since the first two bytes of any Sector are the Track and Sector of the
next data block in that file. This also works well when going from the
directory entry for a file to the first block of that file.
F2 - Read Block:
This command will prompt you for the specific Track and Sector you wish to
view.
F3 - Directory:
This command will jump to and display Track 18, Sector 1. This is the
beginning of the directory entries for all files on the disk.
F4 - Write Block:
This command will write the contents visible on the screen to the Track
and Sector presently accessed (shown in the upper window) of the presently
selected Destination drive.
F5 - ASCII Edit:
This command displays the block data on the screen in it's ASCII format.
All control codes are trapped and printed as white periods, similar to
Translation option 2 in the Print File section of the main menu.
F6 - HEX Edit:
This command displays the block data on the screen in it's Hexadecimal
format. This is handy for figuring out what all those white periods are!
<<grin>>
F7 - Exit:
This command exits the block editor back to the main menu.
F8 - Copy Block:
This command allows you to copy the contents of the block displayed on the
screen to any other block on the disk. You will be prompted for the Track
and Sector number where you want the data written to. This is handy for
experimentation purposes.
^ - Screen Dump:
This is an 'invisible' command. (see above in main menu)
<- - New Parameters:
This is an 'invisible' command. (see above in main menu)
Cursor Keys:
The cursor keys (including the 'home' key) will move the cursor around the
screen to the desired byte of the displayed block. These are also
'invisible' commands and do not appear on the menu.
EDITING SECTOR DATA
While the sector data is displayed on the screen you may move the cursor
over any specific byte and change the contents of that byte. If using ASCII
Edit, pressing any key will change the byte under the cursor to that keys
equivalent. If in HEX Edit, a valid, two digit Hex number must be keyed in
prior to the byte being changed. As in normal screen editing, when a byte
has been changed, the cursor will automatically move to the next byte by
itself. Changed bytes will be printed in a different color to highlight
which bytes have been edited. You may freely change back and forth between
HEX and ASCII edit modes while editing the data. Any already edited data
will remain edited. Once the data has been edited to your satisfaction, you
must use the Write Block option to save the edited data onto the disk. Any
other command will leave the original data as it was on the disk.
WARNING: If you are not familiar with editing data directly on the disk
with a sector editor this way, it is highly advised that you
experiment on a backup disk first. Changing the wrong byte can
make it impossible to access a file on the disk using the
normal Load command, and in certain cases, to Load ANY file
from the disk without changing the byte back.
NOTES: This utility can teach you alot about how files are stored on
your disks. If you are just starting to get interested in this
area, I highly recommend you copy a couple of different files
onto a disk to experiment with. While looking around with this
utility on the disk, the info in the back of the disk drive
manual concerning the way data is stored in the directory, and
the different file types can be invaluable in aiding you. It
also gives you the ability to perform some 'tricks'. For
instance, locate a file name in the directory. You will see the
file name and a series of A0's (in HEX Edit) after the name.
Change the first six A0's immediately after the name to the
following in Hex: 22 2C 38 2C 31 3A The next time you list
the directory with the Directory or Catalog commands, or by
Load '$',8 you will see that the listing will show the file
size and name as normal, but in between the file name and the
file type will appear ,8,1: Many other 'tricks' are possible.
----------------------------------------------------------------------
DISK COMMANDS MENU
$ - Directory:
Same as in main menu, above.
H - Header Disk:
This command will format the disk in the Source drive. You will be
prompted for the new name and ID for the disk. If the RETURN key is pressed
by itself at the name prompt, the name of the disk will be 'file copy
disk'. If at the ID prompt, the fast format option will be used (i.e.
erases the directory only, takes approx. 4 seconds).
NOTE: The fast format option may only be used on disks which have
previously been fully formatted.
V - Validate Disk:
This is the same as the Collect command. It will check to insure that only
the proper blocks on the disk are allocated. Use this command to 'erase'
'Splat' files (improperly closed files marked with an asterisk in the
directory). Length of time for the completion of this command will vary
depending on number of files on disk.
I - Initialize:
This resets the disk drive to it's normal power up condition.
S - Scratch File(s):
This is a multi-file Scratch command. You will be prompted for the number
of the file you wish to Scratch. After answering the prompt, the prompt and
cursor will reappear. At that time you may enter more file numbers for
Scratching, or press RETURN by itself to begin scratching the file(s).
R - Rename File:
This command will rename a file on the disk. You will be prompted for the
Old file name. At this time you may either type in the old name, or type in
the file number preceded by the # symbol. You will then be prompted for the
new name for the file.
G - Get Status:
This command reads and displays the error channel data from the disk
drive. Press any key to erase the data and continue.
> - Freehand Command:
This command allows you to send any valid command string to the drive (up
to 46 characters in length). For instance, entering s0:test.docs would
scratch a file named 'test.docs' from the disk. Reference your disk drive
manual for more information on the available commands for your drive.
E - Exit:
This command exits back to the main menu.
^ - Screen dump:
This is an 'invisible' command. (same as in main menu above)
<- - New Parameters:
This is an 'invisible' command. (same as in main menu above)
Up/Down Cursor Keys:
This is an 'invisible' command. (same as in main menu above)
NOTE: All of the above commands affect the Source drive only.
----------------------------------------------------------------------
FINAL NOTES:
Many of the commands in this program (such as Trace File, Rename
File,etc.) require that you have the directory of the disk called up prior
to their use.
This program will not access Relative files in it's present format. An
update allowing this may be forthcoming if I receive enough requests for
one.
The Header, Scratch File(s), and Exit Program commands include an 'Are You
Sure? prompt.
I did not use the 'Burst' command with this program. The primary reason
for this is that when invoked, all checksums are ignored. The odds are good
that the file would be properly copied even without them, but I wasn't
willing to take the chance with any of my data. Not when I've put hours (or
even weeks) into putting it together in the first place. As noted above,
the copier isn't very fast. Nor will it defeat copy protection techniques.
It wasn't designed to do that. However, it should work on any Commodore
compatible drive without any problems. I have tested it with a 1571 and
1541 without any problems. Over all, I had fun putting this program
together, and I hope you find it useful.
"d